﻿using System;

namespace DimensionsHelper.Common.Contracts.Table;

[Flags]
public enum LineType
{
    Normal = 1,

    /// <summary>
    ///     表示此行位于标题之前
    /// </summary>
    Header = 0x2,

    /// <summary>
    ///     表示此行是标题行
    /// </summary>
    Title = 0x4,

    /// <summary>
    ///     表示此行位于标题之后
    /// </summary>
    Body = 0x8,

    /// <summary>
    ///     表示此行是Base数据所在行
    /// </summary>
    Base = 0x10,

    /// <summary>
    ///     表示此行无有效文本内容
    /// </summary>
    Empty = 0x20,

    /// <summary>
    ///     表示此行的内容是Sig列字母标记
    /// </summary>
    SigMark = 0x40,

    /// <summary>
    ///     表示此行内容是Sig检测的字母结果
    /// </summary>
    SigResult = 0x80,

    /// <summary>
    ///     表示此行是整个文件的描述
    /// </summary>
    FileSpec = 0x100,

    /// <summary>
    ///     表示此行是表格的头部描述
    /// </summary>
    HeaderSpec = 0x200,

    /// <summary>
    ///     表示此行是表格的表侧中间描述
    /// </summary>
    InnerSpec = 0x400,

    /// <summary>
    ///     表示此行是表格的尾部描述
    /// </summary>
    TailSpec = 0x800,

    /// <summary>
    ///     表示此行位于表头起始行之前
    /// </summary>
    BeforeHeader = 0x1000,

    /// <summary>
    ///     表示此行在最后一行表格体之后
    /// </summary>
    AfterBody = 0x2000
}